package com.fuyun.rpc.common.domain;

import com.fuyun.rpc.common.trace.TraceContext;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;

/**
 * @author: zrq1351
 * @date: 2025/2/14
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class RpcResponse implements Serializable {

	/**
	 * 响应数据
	 */
	private Object data;

	/**
	 * 响应数据类型（预留）
	 */
	private Class<?> dataType;

	/**
	 * 响应信息
	 */
	private String message;

	/**
	 * 异常信息
	 */
	private Exception exception;

	/**
	 * 链路追踪上下文
	 */
	private TraceContext traceContext;

}